package com.hzsk.lisence.mapper;

import com.hzsk.lisence.entity.LisenceUserEntity;
import com.hzsk.lisence.entity.LisenceUserGrouping;
import com.hzsk.lisence.entity.query.LisenceServiceQuery;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface LisenceUserMapper {

    Integer createGroupingByAdmin(LisenceUserGrouping lisenceUserGrouping);

    List<LisenceUserGrouping>getUserGroupingList(@Param("name") String name);

    Integer updateUserGroupingInfo(LisenceUserGrouping lisenceUserGrouping);

    Integer delUserGroupingInfo(@Param("id")Integer id);

    List<LisenceUserEntity>getUserList(LisenceServiceQuery lisenceServiceQuery);

    LisenceUserEntity selectEntityById(@Param("userId")Integer id);

    List<LisenceUserEntity> selectEntityByName(@Param("name")String name);

    List<LisenceUserEntity> selectEntityByGroupingId(@Param("id")Integer id);


    String getUserNameById(@Param("id")Integer id);

    Integer saveLisenceUser(LisenceUserEntity lisenceUserEntity);

    LisenceUserEntity existAdministrator(@Param("userRole") String userRole);

    LisenceUserEntity selectEntityByAccountAndPassword(LisenceUserEntity lisenceUserEntity);

    LisenceUserEntity selectEntityByUserNum(LisenceUserEntity lisenceUserEntity);

    Integer updateUserInfo(LisenceUserEntity lisenceUserEntity);

    Integer isAccount(@Param("userAccount") String userAccount);

    Integer delUserinfo(@Param("userId")Integer userId);

    Integer setPasswordReset(@Param("password")String password,@Param("id")Integer id);

    Integer getUserGroupId(@Param("userId")Integer userId);

    String getGroupType(@Param("groupId")Integer groupId);

    List<LisenceUserEntity> selectIsUserByAccountAndPassword(@Param("user")String user,@Param("password")String password);
    LisenceUserEntity selectIsUserByAccountAndPasswordByOneAndCode(@Param("user")String user,@Param("password")String password,@Param("code")String code);
}
